package lesson02;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ListTest {
    public static void main(String[] args) {

       String[] l={"Hadoop","Hbase","Spark"};
       //Tab
        List<String> list = Arrays.asList(l);
        /**
         * 需求：
         *   1）把里面的每一个元素都变成大写
         *   2）把里面的每一个元素都变成小写
         *
         *   IO：
         *
         *   一个方法，没有，但是我就是想用：
         *   1）继承
         *   2）装饰模式
         *
         *  面试题：
         *  一 ：继承  跟 装饰模式有什么区别 装饰模式
         *      继承：对类的增强
         *      装饰模式：工能的增强
         *  二 ：说出六种以上 设计模式
         *       《大话设计模式》  c#
         */
        ArrayList<String> newlist = new MyList(list).map(new Operator() {
            @Override
            public String operator(String word) {
                return word.toLowerCase();
            }
        });

        for(String ll:newlist){
            System.out.println(ll);
        }
    }
}
